package de.tabuma.soap.entity.xsd;

import java.util.*;
import java.io.*;
import javax.jdo.annotations.*;

import de.tabuma.soap.annotation.*;

/**
 * This class represents an element of an wsdl document called &quot;complexcontent&quot;.
 * @author $Author: alefen $
 * @version $Revision: 1.1 $
 * @since $Date: 2009/12/30 02:57:12 $
 */
@PersistenceCapable(identityType = IdentityType.APPLICATION)
@SoapClassDefinition(@SoapClassMapping(mappingString="complexcontent",mappingType=SoapClassMapping.MappingType.XSD))
public class XsComplexContent implements Serializable {

    public XsComplexContent() {
        
        this.xsAnnotationId = new Long(0);
        this.xsRestrictionOrXsExtension = new ArrayList<Long>();
    }

    @PrimaryKey
    @Persistent(valueStrategy = IdGeneratorStrategy.IDENTITY)
    private Long id1;
    public Long getId1() {
        return id1;
    }

    @Persistent
    @SoapAttribute
    protected String mixed;
    public String getMixed() {
        return mixed;
    }
    public void setMixed(String value) {
        this.mixed = value;
    }

    @Persistent
    @SoapAttribute
    protected String id;
    public String getId() {
        return id;
    }
    public void setId(String value) {
        this.id = value;
    }

    @Persistent
    @SoapFieldDefinition(@SoapFieldClass(classDefinition=XsAnnotation.class))
    protected Long xsAnnotationId;
    public Long getXsAnnotationId() {
        return xsAnnotationId;
    }

    public void setXsAnnotationId(Long xsAnnotationId) {
        this.xsAnnotationId = xsAnnotationId;
    }
    
    @Persistent
    @SoapFieldDefinition(
        {
            @SoapFieldClass(classDefinition=XsRestriction.class),
            @SoapFieldClass(classDefinition=XsExtension.class)
    })
    protected List<Long> xsRestrictionOrXsExtension;
    public List<Long> getXsRestrictionOrXsExtension() {
        if(this.xsRestrictionOrXsExtension==null) {
            this.xsRestrictionOrXsExtension = new ArrayList<Long>();
        }
        return this.xsRestrictionOrXsExtension;
    }
    public void setXsRestrictionOrXsExtension(List<Long> xsRestrictionOrXsExtension) {
        this.xsRestrictionOrXsExtension = xsRestrictionOrXsExtension;
    }



}
